﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace TribesPSO
{
    /// <summary>
    /// Provides data for the Particle.ParticleMoved event
    /// </summary>
    public class ParticleMovedEventArgs:EventArgs
    {
        private readonly EuclidianVector oldPosition;
        private readonly EuclidianVector newPosition;

        /// <summary>
        /// Gets the position of the particle before it moved
        /// </summary>
        public EuclidianVector OldPosition { get { return oldPosition; } }

        /// <summary>
        /// Gets the position of the particle after it moved
        /// </summary>
        public EuclidianVector NewPosition { get { return newPosition; } }

        /// <summary>
        /// Initializes a new ParticleMovedEventArgs object with the specified old position and new position
        /// </summary>
        /// <param name="oldPosition">The position of the particle before it moved</param>
        /// <param name="newPosition">The position of the particle after it moved</param>
        public ParticleMovedEventArgs(EuclidianVector oldPosition, EuclidianVector newPosition)
        {
            this.oldPosition = oldPosition;
            this.newPosition = newPosition;
        }
    }
}
